package com.han.fu.api.business.model.ao;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.Date;

/**
 * 活动
 *
 * @author star
 * @date 2021-08-05
 */
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class ActivityAddAo {

    /**
     * 主键
     */
    @NotBlank(message = "主键不能为空")
    @Size(max = 50, message = "主键最长不能超过50")
    private String id;

    /**
     * 标题
     */
    @NotBlank(message = "标题不能为空")
    @Size(max = 50, message = "标题最长不能超过50")
    private String title;

    /**
     * 内容
     */
    @NotBlank(message = "内容不能为空")
    @Size(max = 50, message = "内容最长不能超过50")
    private String content;

    /**
     * 费用(1:收费2:免费)
     */
    @NotNull(message = "费用(1:收费2:免费)不能为空")
    private Integer cost;

    /**
     * 金额
     */
    @NotNull(message = "金额不能为空")
    private Integer amount;

    /**
     * 首图
     */
    @NotBlank(message = "首图不能为空")
    @Size(max = 50, message = "首图最长不能超过50")
    private String firstImgName;

    /**
     * 阅读数量
     */
    @NotNull(message = "阅读数量不能为空")
    private Integer readNum;

    /**
     * 点赞数量
     */
    @NotNull(message = "点赞数量不能为空")
    private Integer giveUpNum;

    /**
     * 评论数量
     */
    @NotNull(message = "评论数量不能为空")
    private Integer commentNum;

    /**
     * 分享数量
     */
    @NotNull(message = "分享数量不能为空")
    private Integer shareNum;

    /**
     * 来源(1:客户端2:后台)
     */
    @NotNull(message = "来源(1:客户端2:后台)不能为空")
    private Integer source;

    /**
     * 状态(0:待审核1:已通过2:未通过)
     */
    @NotNull(message = "状态(0:待审核1:已通过2:未通过)不能为空")
    private Integer status;

    /**
     * 审核方式(1:系统2:人工)
     */
    @NotNull(message = "审核方式(1:系统2:人工)不能为空")
    private Integer auditMethod;

    /**
     * 是否删除(0:未删除 1:已删除)
     */
    @NotNull(message = "是否删除(0:未删除 1:已删除)不能为空")
    private Integer isDeleted;

    /**
     * 创建时间
     */
    @NotNull(message = "创建时间不能为空")
    private Date createTime;

    /**
     * 创建用户
     */
    @NotBlank(message = "创建用户不能为空")
    @Size(max = 50, message = "创建用户最长不能超过50")
    private String createUser;

    /**
     * 创建用户名称
     */
    @NotBlank(message = "创建用户名称不能为空")
    @Size(max = 50, message = "创建用户名称最长不能超过50")
    private String createUserName;

    /**
     * 更新时间
     */
    @NotNull(message = "更新时间不能为空")
    private Date updateTime;

    /**
     * 修改用户
     */
    @NotBlank(message = "修改用户不能为空")
    @Size(max = 50, message = "修改用户最长不能超过50")
    private String updateUser;

    /**
     * 修改用户名称
     */
    @NotBlank(message = "修改用户名称不能为空")
    @Size(max = 50, message = "修改用户名称最长不能超过50")
    private String updateUserName;

}